package com.changzhi.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.changzhi.ldyl.model.Invite;
import com.changzhi.ldyl.model.dto.InviteDto;
import com.changzhi.ldyl.model.vo.InviteVo;
import com.changzhi.ldyl.model.vo.PrizeVo;
import com.changzhi.ldyl.model.vo.UserVo;

import java.util.List;
import java.util.Map;

/**
 * @Description:
 * @author: 小落
 * @date: 2020年11月04日
 */
public interface InviteService extends IService<Invite> {

	void doMqDataByHandler(InviteDto inviteDto);

	void doInviteByOrderSuccess(String userId);

	void doMqDataByUserInvite(String msg);

	/**
	 * 基本信息
	 * @param inviteDto
	 * @return
	 */
	InviteVo getBaseInfo(InviteDto inviteDto);

	/**
	 * 其他信息
	 * @param inviteDto
	 * @return
	 */
	InviteVo getOtherInfo(InviteDto inviteDto);


	InviteVo share(String code, String ip);


	List<UserVo> inviteList(InviteDto inviteDto);

	Map<String, Object> inviteSum(InviteDto inviteDto);

	Map<String, Object> exPrize(InviteDto inviteDto);

	boolean insertVisitRecord(String code, String ip);

	List<PrizeVo> exRecordList(InviteDto inviteDto);

	List<PrizeVo> lastExRecordList(InviteDto inviteDto);

	/**
	 * 邀请奖励定时发放（友情币）
	 */
	void inviteGivePrize();
}
